package com.jinxin.platform.cdflowchart.pojo.domains;


import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;

import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * 能耗树(CdflowchartBeeTree)实体类
 *
 * @author cxj
 * @since 2021-10-13 09:38:51
 */
@Data
@Accessors(chain = true)  //链式写法
@NoArgsConstructor  //无参构造方法
@AllArgsConstructor //有参构造方法
@ApiModel(description = "能耗树")
public class CdflowchartBeeTreeInfoDO implements Serializable {
    private static final long serialVersionUID = 571204235154277585L;
    /**
     * 主键ID
     */
    @ApiModelProperty(value = "主键ID")
    private String id;
    /**
     * 创建人员
     */
    @ApiModelProperty(value = "创建人员")
    private String createdBy;
    /**
     * 创建人员ID
     */
    @ApiModelProperty(value = "创建人员ID")
    private String createdById;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createdTime;
    /**
     * 更新人员
     */
    @ApiModelProperty(value = "主键ID")
    private String updatedBy;
    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Date updatedTime;
    /**
     * 节点名称
     */
    @ApiModelProperty(value = "节点名称")
    private String nodeName;
    /**
     * 节点类型：1文件夹、2文件
     */
    @ApiModelProperty(value = "节点类型")
    private String nodeType;
    /**
     * 上级节点ID
     */
    @ApiModelProperty(value = "上级节点ID")
    private String upNodeId;
    /**
     * 上级节点名称
     */
    @ApiModelProperty(value = "上级节点名称")
    private String upNodeName;
    /**
     * 上级节点层级
     */
    @ApiModelProperty(value = "上级节点层级")
    private String upNodeLevel;
    /**
     * 是否选中
     */
    @ApiModelProperty(value = "是否选中")
    private String isChecked;
    /**
     * 节点层级
     */
    @ApiModelProperty(value = "节点层级")
    private String nodeLevel;
    /**
     * 节点状态（1open、2close）
     */
    @ApiModelProperty(value = "节点状态")
    private String nodeStatus;
    /**
     * 是否有父节点
     */
    @ApiModelProperty(value = "是否有父节点")
    private String isParent;
    /**
     * 是否有子节点
     */
    @ApiModelProperty(value = "是否有子节点")
    private String isChildren;
    /**
     * 绑定设备名称
     */
    @ApiModelProperty(value = "绑定设备名称")
    private String bindDevicesName;
    /**
     * 绑定设备mac
     */
    @ApiModelProperty(value = "绑定设备mac")
    private String bindDevicesMac;
    /**
     * 设备类型
     */
    @ApiModelProperty(value = "设备类型")
    private String deviceType;

    // 节点属性
    private List<Map<String, Object>> attributes;
    // 节点的子节点
    private List<CdflowchartBeeTreeInfoDO> children = new ArrayList();

}
